#ifndef XMLWRITER_HPP
#define XMLWRITER_HPP

/*! \file xmlwriter.hpp
 *
 *  \brief Definicja klasy XMLWriter.
 *
 *  Plik zawiera definicję klasy XMLWriter.
 *  Zadaniem obiektów tej klasy jest zapisywanie
 *  informacji w plikach xml.
 *
 *  \author Karol Kurpanik
 *  \date 2010.04.04
 *  \version 2.20.2
 */

#include <QFile>
#include <QtXml/QtXml>

#include "chartstylefactory.hpp"

/*! \class XMLWriter
 *
 *  \brief Pisanie do pliku xml.
 *
 *  Klasa pozwala na zapisanie informacji pliku xml zawierającego
 *  bibliotekę stylów w określonym formacie.
 */
class XMLWriter
{
public:
    /*!
     * \brief Zapisuje dane do pliku.
     *
     * Metoda pozwala na zapisanie danych do pliku w formacie
     * xml, w sposób zdefiniowany wewnątrz tej metody.
     * \param name - zawiera nazwę pliku do zapisania, nazwa
     * może wskazywać na plik xml istniejący na dysku.
     * \param bs - wskazuje na istniejącą bibliotekę stylów.
     * \post zostanie utworzony nowy plik xml lub nadpisany istniejący plik
     * o nazwie name.
     * \return void.
     */
    void write(const QString &name, BibStyle *bs);
};

#endif // XMLWRITER_HPP
